Skip to main content

Release Process

Creating a Release​

  1. Create a release branch from main:

    open repo branches page: https://github.com/legion-security/REPO-NAME/branches

    create new branch with name release/YYYY-MM-DD

  2. Open a PR from release/YYYY-MM-DD → production.

    Wait for all CI checks to go green before merging.

  3. Merge the PR.

    The production deployment pipeline triggers automatically on merge.


Last-Minute Fixes​

If a fix is needed after the release branch is already created:

  1. Merge the fix into main first.

  2. Create a new release branch from the updated main:

    open repo branches page: https://github.com/legion-security/REPO-NAME/branches

    create new branch with name release/YYYY-MM-DD-2

  3. Close the old PR and open a new one from the new branch.

Why not push directly to the release branch? The release branch is a frozen snapshot of main at a specific point in time. Committing directly to it means the fix bypasses the normal review process on main and is never backported — it would be lost in the next release. Always fix in main first to keep branches in sync.